Setup

Load R libraries

library(data.table)
library(ggplot2)
library(ggpubr)
library(tidyr)
library(limma)
library(stringr)

theme_set(theme_classic())

cell_type_name = params$cell_type_name
graph_weight = params$graph_weight

cell_type_name
## [1] "cd4"
graph_weight
## [1] "5.0"

Check enrichment of gene sets

Read in gene info and gene set assignments

file_tag = sprintf("%s_BL_%s", cell_type_name, graph_weight)

assayed_genes = scan(sprintf("output/gene_list_%s.txt", file_tag), 
                     what = character(), sep="\n")

gene_sets = scan(sprintf("output/name_s_%s.txt", file_tag), 
                 what = character(), sep="\n")

gene_sets = sapply(gene_sets, strsplit, USE.NAMES=FALSE, split=",")
n_genes   = sapply(gene_sets, length)
names(n_genes) = NULL
summary(n_genes)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##     4.0    23.0    24.0    23.3    25.0    26.0
length(n_genes)
## [1] 40
sort(n_genes)
##  [1]  4 19 20 22 22 22 22 22 23 23 23 23 23 23 24 24 24 24 24 24 24 24 24 24 25
## [26] 25 25 25 25 25 25 25 25 25 25 25 25 25 25 26

Find gene symbols using the alias2Symbol function from limma.

a2s = rep(NA, length(assayed_genes))
for(i in 1:length(assayed_genes)){
  gi = assayed_genes[i]
  ai = alias2Symbol(gi)
  if(length(ai) > 1){
    print(gi)
    print(ai)
  }
  a2s[i] = ai[1]
}
## [1] "HIST1H2BC"
## [1] "H2BC5" "H2BC4"
## [1] "MPP6"
## [1] "MPHOSPH6" "PALS2"   
## [1] "MARS"
## [1] "MARS1" "SLA2" 
## [1] "SEPT2"
## [1] "SEPTIN6" "SEPTIN2"
table(is.na(a2s))
## 
## FALSE  TRUE 
##  1951    49
table(a2s == assayed_genes, useNA = 'ifany')
## 
## FALSE  TRUE  <NA> 
##    45  1906    49
gene_info = data.table(sym_in_data = assayed_genes, sym_limma = a2s)

gene_info[sym_in_data != sym_limma,]
##      sym_in_data   sym_limma
##  1:      ADPRHL2       ADPRS
##  2:          AES        TLE5
##  3:     C12orf45    NOPCHAP1
##  4:      C3orf58      DIPK2A
##  5:      C6orf99   LINC02901
##  6:        CBWD2       ZNG1B
##  7:      CXorf57        RADX
##  8:      FAM102A       EEIG1
##  9:      FAM122C      PABIR3
## 10:      FAM153C    FAM153CP
## 11:     FAM160A2      FHIP1B
## 12:        GRASP     TAMALIN
## 13:        H2AFX        H2AX
## 14:    HIST1H2AG      H2AC11
## 15:    HIST1H2BC       H2BC5
## 16:    HIST1H2BK      H2BC12
## 17:    HIST1H2BN      H2BC15
## 18:     HIST1H3A        H3C1
## 19:     HIST1H3H       H3C10
## 20:     HIST1H4C        H4C3
## 21:    HIST2H2BF      H2BC18
## 22:         LRMP       IRAG2
## 23:      MFSD14C    MFSD14CP
## 24:         MKL1       MRTFA
## 25:         MPP6    MPHOSPH6
## 26:  RNASEH1-AS1  RNASEH1-DT
## 27:        SEPT6     SEPTIN6
## 28:        SEPT9     SEPTIN9
## 29: TMEM161B-AS1 TMEM161B-DT
## 30:        ARNTL       BMAL1
## 31:     C6orf106       ILRUN
## 32:     C6orf203      MTRES1
## 33:      FAM129A      NIBAN1
## 34:     FAM160B1      FHIP2A
## 35:      FAM192A    PSME3IP1
## 36:        HEXDC        HEXD
## 37:     HIST1H1E        H1-4
## 38:     KIAA0100       BLTP2
## 39:     KIAA1551       RESF1
## 40:         LARS       LARS1
## 41:         MARS       MARS1
## 42:      PLA2G16      PLAAT3
## 43:        SEPT2     SEPTIN6
## 44:       SMIM37        MTLN
## 45:         YARS       YARS1
##      sym_in_data   sym_limma
gene_info[, gene_symbol := sym_in_data]
gene_info[which(sym_in_data != sym_limma & (gene_symbol != "MT-CO2")), 
                gene_symbol := sym_limma]

dim(gene_info)
## [1] 2000    3
gene_info[1:5,]
##    sym_in_data sym_limma gene_symbol
## 1:       ABCD3     ABCD3       ABCD3
## 2:       ABCG1     ABCG1       ABCG1
## 3:       ABHD5     ABHD5       ABHD5
## 4:        ABI1      ABI1        ABI1
## 5:      ABLIM1    ABLIM1      ABLIM1
t1 = table(gene_info$gene_symbol)
table(t1)
## t1
##    1    2 
## 1998    1
gene_info[gene_symbol %in% names(t1)[t1 == 2],]
##    sym_in_data sym_limma gene_symbol
## 1:       SEPT6   SEPTIN6     SEPTIN6
## 2:       SEPT2   SEPTIN6     SEPTIN6
gene_info[sym_in_data == "HIST1H2BC", gene_symbol:="H2BC4"]
gene_info[sym_in_data == "HIST1H2BG", gene_symbol:="H2BC8"]
gene_info[sym_in_data == "SEPT6", gene_symbol:="SEPTIN6"]
gene_info[sym_in_data == "SEPT2", gene_symbol:="SEPTIN2"]

Read in cell type-specific expression data

Cell type specific gene expression were downloaded from protein atlas.

ct = fread("../Annotation/rna_single_cell_type.tsv.gz")
dim(ct)
## [1] 1587110       4
ct[1:5,]
##               Gene Gene name             Cell type  nTPM
## 1: ENSG00000000003    TSPAN6            Adipocytes 149.5
## 2: ENSG00000000003    TSPAN6 Alveolar cells type 1   6.1
## 3: ENSG00000000003    TSPAN6 Alveolar cells type 2  10.5
## 4: ENSG00000000003    TSPAN6            Astrocytes  13.9
## 5: ENSG00000000003    TSPAN6               B-cells   1.5
length(unique(ct$`Cell type`))
## [1] 79
table(ct$`Cell type`)
## 
##                      Adipocytes           Alveolar cells type 1 
##                           20090                           20090 
##           Alveolar cells type 2                      Astrocytes 
##                           20090                           20090 
##                         B-cells             Basal keratinocytes 
##                           20090                           20090 
##           Basal prostatic cells         Basal respiratory cells 
##                           20090                           20090 
## Basal squamous epithelial cells                   Bipolar cells 
##                           20090                           20090 
##          Breast glandular cells      Breast myoepithelial cells 
##                           20090                           20090 
##                  Cardiomyocytes                  Cholangiocytes 
##                           20090                           20090 
##                      Club cells           Collecting duct cells 
##                           20090                           20090 
##        Cone photoreceptor cells                Cytotrophoblasts 
##                           20090                           20090 
##                 dendritic cells              Distal enterocytes 
##                           20090                           20090 
##            Distal tubular cells                    Ductal cells 
##                           20090                           20090 
##                Early spermatids      Endometrial ciliated cells 
##                           20090                           20090 
##       Endometrial stromal cells               Endothelial cells 
##                           20090                           20090 
##           Enteroendocrine cells                 Erythroid cells 
##                           20090                           20090 
##              Excitatory neurons        Exocrine glandular cells 
##                           20090                           20090 
##       Extravillous trophoblasts                     Fibroblasts 
##                           20090                           20090 
##   Gastric mucus-secreting cells     Glandular and luminal cells 
##                           20090                           20090 
##                    granulocytes                 Granulosa cells 
##                           20090                           20090 
##                     Hepatocytes                  Hofbauer cells 
##                           20090                           20090 
##                Horizontal cells              Inhibitory neurons 
##                           20090                           20090 
##         Intestinal goblet cells                       Ionocytes 
##                           20090                           20090 
##                   Kupffer cells                Langerhans cells 
##                           20090                           20090 
##                 Late spermatids                    Leydig cells 
##                           20090                           20090 
##                     Macrophages                     Melanocytes 
##                           20090                           20090 
##                Microglial cells                       monocytes 
##                           20090                           20090 
##           Mucus glandular cells               Muller glia cells 
##                           20090                           20090 
##                        NK-cells Oligodendrocyte precursor cells 
##                           20090                           20090 
##                Oligodendrocytes      Pancreatic endocrine cells 
##                           20090                           20090 
##                    Paneth cells               Peritubular cells 
##                           20090                           20090 
##                    Plasma cells       Prostatic glandular cells 
##                           20090                           20090 
##            Proximal enterocytes          Proximal tubular cells 
##                           20090                           20090 
##      Respiratory ciliated cells         Rod photoreceptor cells 
##                           20090                           20090 
##             Salivary duct cells                   Schwann cells 
##                           20090                           20090 
##          Serous glandular cells                   Sertoli cells 
##                           20090                           20090 
##               Skeletal myocytes             Smooth muscle cells 
##                           20090                           20090 
##                   Spermatocytes                   Spermatogonia 
##                           20090                           20090 
##       Squamous epithelial cells        Suprabasal keratinocytes 
##                           20090                           20090 
##            Syncytiotrophoblasts                         T-cells 
##                           20090                           20090 
##                     Theca cells         Thymic epithelial cells 
##                           20090                           20090 
##          Undifferentiated cells 
##                           20090
ct_immune = fread("../Annotation/rna_immune_cell_monaco.tsv.gz")
dim(ct_immune)
## [1] 602700      5
ct_immune[1:5,]
##               Gene Gene name                Immune cell TPM pTPM
## 1: ENSG00000000003    TSPAN6                   basophil  NA  1.2
## 2: ENSG00000000003    TSPAN6  Central memory CD8 T-cell  NA  1.7
## 3: ENSG00000000003    TSPAN6         classical monocyte  NA  0.2
## 4: ENSG00000000003    TSPAN6 Effector memory CD8 T-cell  NA  0.7
## 5: ENSG00000000003    TSPAN6    Exhausted memory B-cell  NA  0.7
summary(ct_immune$TPM)
##    Mode    NA's 
## logical  602700
summary(ct_immune$pTPM)
##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##     0.00     0.00     3.10    49.74    27.20 96572.50
summary(ct_immune$pTPM[ct_immune$pTPM > 0])
##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##     0.10     1.70    11.60    67.96    42.80 96572.50
length(unique(ct_immune$`Immune cell`))
## [1] 30
table(ct_immune$`Immune cell`)
## 
##                            basophil           Central memory CD8 T-cell 
##                               20090                               20090 
##                  classical monocyte          Effector memory CD8 T-cell 
##                               20090                               20090 
##             Exhausted memory B-cell               intermediate monocyte 
##                               20090                               20090 
##                         MAIT T-cell               Memory CD4 T-cell TFH 
##                               20090                               20090 
##               Memory CD4 T-cell Th1          Memory CD4 T-cell Th1/Th17 
##                               20090                               20090 
##              Memory CD4 T-cell Th17               Memory CD4 T-cell Th2 
##                               20090                               20090 
##                          myeloid DC                        naive B-cell 
##                               20090                               20090 
##                    naive CD4 T-cell                    naive CD8 T-cell 
##                               20090                               20090 
##                          neutrophil                             NK-cell 
##                               20090                               20090 
##              non-classical monocyte          Non-switched memory B-cell 
##                               20090                               20090 
##                       Non-Vd2 gdTCR                         Plasmablast 
##                               20090                               20090 
##                     plasmacytoid DC                     Progenitor cell 
##                               20090                               20090 
##              Switched memory B-cell                               T-reg 
##                               20090                               20090 
## Terminal effector memory CD4 T-cell Terminal effector memory CD8 T-cell 
##                               20090                               20090 
##                          total PBMC                           Vd2 gdTCR 
##                               20090                               20090
lineage = fread("../Annotation/rna_immune_cell_monaco_cell_types.tsv")
dim(lineage)
## [1] 30  2
lineage[1:2,]
##     Cell_type      Lineage
## 1:   Basophil Granulocytes
## 2: Neutrophil Granulocytes

Check gene expression for each gene set

dim(gene_info)
## [1] 2000    3
for(k in 1:length(gene_sets)){
  if(length(gene_sets[[k]]) < 10) { next }
  
  print(k)
  set_k = paste0("set_", k)
  print(gene_sets[[k]])
  
  genes = gene_info[sym_in_data %in% gene_sets[[k]], gene_symbol]

  n_genes = sum(genes %in% ct_immune$`Gene name`)
  print(sprintf("found %d genes.", n_genes))

  if(n_genes == 0) { next }

  df = ct_immune[`Gene name` %in% genes,]
  dim(df)
  df[1:2,]
  
  stopifnot(all(str_to_lower(df$`Immune cell`) %in% 
                  str_to_lower(lineage$Cell_type)))
  
  mat1 = match(str_to_lower(df$`Immune cell`), 
               str_to_lower(lineage$Cell_type))
  
  df = cbind(df, lineage[mat1,])
  df[1:2,]
  
  df$Cell_type = factor(df$Cell_type, levels = lineage$Cell_type)
  df = df[df$Lineage != "Total PBMC",]
  df$Lineage   = factor(df$Lineage, 
                        levels = setdiff(lineage$Lineage, "Total PBMC"))
  
  p1 = ggplot(df, aes(x=Cell_type, y=log10(pTPM + 0.1), fill=Lineage)) + 
    geom_boxplot() + xlab("Cell type") + ggtitle(set_k) + 
    theme(axis.text.x = element_text(angle = 45, hjust = 1)) + 
    scale_fill_brewer(palette="RdBu")

  print(p1)
}
## [1] 1
##  [1] "ADK"      "KIF9"     "SNHG7"    "UPF3A"    "AP3M2"    "APBB1IP" 
##  [7] "ATXN7L3B" "BROX"     "C2orf68"  "CYTIP"    "ENY2"     "IFITM2"  
## [13] "IRAK4"    "PKNOX1"   "PLAC8"    "PRMT2"    "SDR39U1"  "SEC14L1" 
## [19] "SESN3"    "SETD5"    "SIGIRR"   "STK17B"  
## [1] "found 21 genes."

## [1] 2
##  [1] "CCM2"     "CHURC1"   "DNAAF2"   "EVI2B"    "FCER1G"   "LEPROTL1"
##  [7] "NMT2"     "PTGER4"   "RNF220"   "SCPEP1"   "SERTAD1"  "SFI1"    
## [13] "SNX18"    "TMEM107"  "TNFRSF25" "APOBEC3G" "EMP3"     "FAM53B"  
## [19] "KLRG1"    "LAG3"     "SCAMP4"   "SPOCK2"   "UBR2"    
## [1] "found 23 genes."

## [1] 3
##  [1] "AC008105.3"   "AC093323.1"   "AK5"          "AL359220.1"   "ARRDC2"      
##  [6] "BOLA2-SMG1P6" "COQ8A"        "GPCPD1"       "IGLV1-44"     "JCHAIN"      
## [11] "LINC01215"    "LRMP"         "LST1"         "MDS2"         "MFSD14C"     
## [16] "MUC20-OT1"    "NAA16"        "PLCL1"        "SPART"        "TMEM161B-AS1"
## [21] "TRAV38-2DV8"  "TRBV7-3"      "ZNF600"       "ZNF749"       "ZNF862"      
## [1] "found 18 genes."

## [1] 5
##  [1] "AC007952.4" "AC013264.1" "AC025171.2" "AC087239.1" "AC245014.3"
##  [6] "AL138963.3" "ANXA2R"     "DELE1"      "IGKV3-20"   "JAML"      
## [11] "LRRC8C-DT"  "LRRN3"      "NR4A2"      "SCML4"      "SNHG8"     
## [16] "ST7L"       "TBCC"       "TMEM71"     "TRAV8-6"    "TRBV28"    
## [21] "TRBV5-4"    "WASHC4"     "ZFP14"      "ZNF506"     "MATK"      
## [1] "found 17 genes."

## [1] 6
##  [1] "AC145124.1"  "ARHGAP15"    "C12orf29"    "COX10"       "CST3"       
##  [6] "DPYD"        "ERAP2"       "IGLV2-14"    "KCNK6"       "TOMM7"      
## [11] "TRAV12-2"    "TRAV13-2"    "TRAV21"      "TRAV41"      "TRBC1"      
## [16] "TRBC2"       "TRBV6-2"     "TRBV6-6"     "TSPOAP1-AS1" "TTC39C"     
## [21] "UCP2"        "CCL5"        "CCR4"        "FRMD4B"      "GZMA"       
## [1] "found 23 genes."

## [1] 7
##  [1] "AC009061.2" "AMD1"       "CD96"       "COA1"       "HELQ"      
##  [6] "LDLRAP1"    "RNASEK"     "ARID5B"     "CARD11"     "CCDC112"   
## [11] "CHD6"       "COX17"      "CRTC3"      "ERICH1"     "GON4L"     
## [16] "KIAA1551"   "KIF3B"      "MIER1"      "NADSYN1"    "NBEAL2"    
## [21] "SLC23A2"    "STK10"      "TCF25"      "TRAC"       "ZNF267"    
## [1] "found 24 genes."

## [1] 8
##  [1] "ANAPC4"   "BTG1"     "BTG2"     "CHD2"     "EIF1"     "EPHB6"   
##  [7] "FBXL3"    "LYRM7"    "PHC1"     "PLK2"     "PNRC1"    "PPIL3"   
## [13] "SFMBT1"   "ZFP36L1"  "CCDC12"   "CGGBP1"   "DPP7"     "GPHN"    
## [19] "PCGF5"    "PUS7L"    "SMAP1"    "SREK1IP1"
## [1] "found 22 genes."

## [1] 9
##  [1] "ABHD5"     "ATG13"     "CD38"      "FCGR3A"    "LAX1"      "MMP24OS"  
##  [7] "ODF2L"     "PNPLA2"    "RASA2"     "RCSD1"     "SNRK"      "TESPA1"   
## [13] "TMC8"      "TRAV23DV6" "TRAV8-2"   "TUBD1"     "TUBE1"     "ZBTB25"   
## [19] "HSH2D"     "IFI44"     "IFI44L"    "OAS1"      "TRAT1"    
## [1] "found 23 genes."

## [1] 10
##  [1] "ABCC10"     "ABHD3"      "AC116407.2" "AC118549.1" "ADTRP"     
##  [6] "C20orf204"  "CARMIL2"    "CFD"        "FAAH2"      "GPR132"    
## [11] "HRH2"       "LRRC58"     "MIAT"       "NORAD"      "NRDC"      
## [16] "OSM"        "PCSK1N"     "SLF2"       "SLFN12L"    "SPATA13"   
## [21] "TOMM70"     "TRANK1"     "UBALD2"     "Z93930.2"   "ZFYVE28"   
## [1] "found 20 genes."

## [1] 11
##  [1] "BDH1"     "CCR6"     "CD48"     "LCLAT1"   "PTPRCAP"  "RNF139"  
##  [7] "SLC12A6"  "SLC25A25" "TRAM1"    "ATP8B2"   "CD2"      "CD58"    
## [13] "CMTM6"    "GIMAP4"   "HM13"     "LPCAT3"   "LPCAT4"   "LPGAT1"  
## [19] "SLC12A9" 
## [1] "found 19 genes."

## [1] 12
##  [1] "AC119396.1" "AF213884.3" "AL118516.1" "AL627171.1" "AL645728.1"
##  [6] "C12orf57"   "C6orf99"    "CHRM3-AS2"  "CSKMT"      "EGR1"      
## [11] "HIPK1-AS1"  "HIST1H2BC"  "ILF3-DT"    "LINC00649"  "LINC01550" 
## [16] "METTL21A"   "MID1IP1"    "NPIPB11"    "NUP58"      "ORC4"      
## [21] "TC2N"       "TMEM154"    "TRABD2A"    "TMEM175"   
## [1] "found 13 genes."

## [1] 13
##  [1] "AKT3"     "C12orf45" "C1orf43"  "EPHX2"    "GTPBP6"   "IP6K2"   
##  [7] "LBH"      "NR1D1"    "NR1D2"    "PAPOLG"   "PDCD7"    "PDE3B"   
## [13] "PHLDA1"   "PPP1R15B" "TMEM63A"  "TNFAIP8"  "TTC3"     "DHX29"   
## [19] "EAPP"     "EHMT1"    "POGLUT1"  "SPTLC2"   "TCIRG1"  
## [1] "found 22 genes."

## [1] 14
##  [1] "ACADSB"    "ACSS1"     "ANKH"      "ARID4A"    "ARMH1"     "C7orf31"  
##  [7] "CAMK4"     "CFAP36"    "CTSF"      "DAPP1"     "FAM153C"   "FCMR"     
## [13] "FOSB"      "FYB1"      "HIST1H4C"  "IER2"      "IFRD1"     "ING2"     
## [19] "MTRNR2L12" "MXD1"      "PLEKHM1"   "RGCC"      "TGIF1"     "YY1AP1"   
## [1] "found 23 genes."

## [1] 15
##  [1] "CHIC2"      "DHRS3"      "ADGRE5"     "AKNA"       "C12orf75"  
##  [6] "CARD16"     "CD69"       "GRK2"       "KANSL1-AS1" "KIAA0040"  
## [11] "MT1X"       "MTRNR2L8"   "NAA38"      "NBDY"       "NDUFC1"    
## [16] "NSD3"       "PAXX"       "PTGER2"     "PUM3"       "RASAL3"    
## [21] "TRAV29DV5"  "TRBV12-3"   "TSPAN32"    "TUT4"       "USP30-AS1" 
## [1] "found 22 genes."

## [1] 16
##  [1] "AC015982.1" "AC027644.3" "AC084033.3" "AC097376.2" "AL135791.1"
##  [6] "ARF4-AS1"   "ARL4A"      "CERNA1"     "CHMP7"      "FAM102A"   
## [11] "FAM122C"    "GOLGA8B"    "IL23A"      "LETM2"      "LINC02265" 
## [16] "LINC02273"  "NDUFV2-AS1" "NOCT"       "NPIPB5"     "NSMCE3"    
## [21] "PRR7"       "RGS1"       "THAP9-AS1"  "ATAD2B"     "NUP160"    
## [1] "found 12 genes."

## [1] 17
##  [1] "AKIRIN1" "AKIRIN2" "GIMAP8"  "OSER1"   "PCMTD2"  "PYROXD1" "RABL2B" 
##  [8] "STMN3"   "TECPR1"  "ZFX"     "ZNF140"  "CAMTA2"  "DOCK11"  "NDUFA3" 
## [15] "NRROS"   "OAS2"    "PPP2R3C" "PSMB9"   "RNF19A"  "SRP54"   "TBC1D14"
## [22] "TRAPPC8" "UBA7"    "UTP25"  
## [1] "found 24 genes."

## [1] 18
##  [1] "CD28"    "DBP"     "PECAM1"  "BATF"    "CD320"   "CISH"    "CMIP"   
##  [8] "FBXO9"   "G2E3"    "IFI35"   "IL2RB"   "IL2RG"   "IL32"    "INPP5D" 
## [15] "MYOM2"   "NQO2"    "P4HTM"   "RAPGEF1" "SLC35A2" "TIPARP"  "UGCG"   
## [22] "ZNF276"  "ZNF708" 
## [1] "found 23 genes."

## [1] 19
##  [1] "AC025159.1" "AC087623.3" "COQ7"       "EFCAB2"     "ENOSF1"    
##  [6] "FOXN3"      "GADD45B"    "GRASP"      "KCNQ1OT1"   "MBD6"      
## [11] "NSUN6"      "ODC1"       "SLC22A17"   "SNHG12"     "TBCCD1"    
## [16] "TCTA"       "YPEL2"      "AC022916.1" "ANKAR"      "AREG"      
## [21] "ITK"        "SNHG9"      "TAF4B"      "TNFRSF4"    "UBE3B"     
## [1] "found 19 genes."

## [1] 20
##  [1] "C16orf74" "C3orf58"  "CCDC141"  "CCDC66"   "CEP95"    "CHMP1B"  
##  [7] "FAM117B"  "IL6R"     "MAST4"    "PHYH"     "PIK3IP1"  "PNISR"   
## [13] "RCAN3"    "RIC1"     "SH3YL1"   "SLC44A1"  "STX16"    "TBCK"    
## [19] "TSC22D2"  "WARS2"    "ADAM19"   "C12orf4"  "HELB"     "WDR7"    
## [1] "found 24 genes."

## [1] 21
##  [1] "ADPRHL2"    "BTN3A1"     "LTA4H"      "PITPNA-AS1" "TMEM245"   
##  [6] "UTP6"       "ALOX5AP"    "APOL1"      "APOL6"      "BTN3A2"    
## [11] "BUD23"      "CTSW"       "ECPAS"      "GBP1"       "GBP3"      
## [16] "GBP5"       "GZMM"       "HEXDC"      "MCTP2"      "NCBP3"     
## [21] "PEX11B"     "SP140"      "TAOK3"      "TGFBR3"     "TMEM62"    
## [1] "found 24 genes."

## [1] 22
##  [1] "RBKS"     "ZSCAN18"  "ABHD2"    "APH1B"    "CITED4"   "DDX3Y"   
##  [7] "EIF1AY"   "GABPB2"   "IL21R"    "KDM5D"    "KHNYN"    "KIF21B"  
## [13] "RNF157"   "RPS4Y1"   "RTKN2"    "SBNO2"    "SLC25A37" "SUSD6"   
## [19] "TENT5C"   "TMEM156"  "TTTY15"   "UTY"     
## [1] "found 21 genes."

## [1] 23
##  [1] "ASAH1"   "HVCN1"   "MYADM"   "OXLD1"   "AGAP2"   "ARHGAP4" "BLOC1S6"
##  [8] "CD55"    "CD7"     "DIP2A"   "GGCX"    "IFNAR1"  "IFNGR2"  "MORC3"  
## [15] "NME3"    "NPDC1"   "PIEZO1"  "PSME2"   "REXO2"   "SCAF8"   "TIMP1"  
## [22] "UQCC2"   "ZDHHC20"
## [1] "found 23 genes."

## [1] 24
##  [1] "COL18A1"   "DALRD3"    "NECAP2"    "ADGRG1"    "ARHGEF3"   "ARL4C"    
##  [7] "COL6A3"    "COLGALT1"  "CX3CR1"    "FGFBP2"    "LAIR2"     "LINC01871"
## [13] "LPIN1"     "LPIN2"     "LY96"      "PCED1B"    "PLEK"      "RAP1GAP2" 
## [19] "RNPEPL1"   "SP140L"    "TCAF2"     "TTC16"     "VPS13D"    "ZNF683"   
## [1] "found 23 genes."

## [1] 25
##  [1] "C6orf62" "CCNH"    "COQ10B"  "DGKA"    "ERCC5"   "FHIT"    "INPP4B" 
##  [8] "KLHL24"  "LEF1"    "MYNN"    "NFYB"    "TCF7"    "TPP2"    "ACAP1"  
## [15] "CREBZF"  "ETNK1"   "NARF"    "NFE2L1"  "PPRC1"   "RHOH"    "STAT4"  
## [22] "TGS1"    "VPS36"   "XBP1"   
## [1] "found 24 genes."

## [1] 26
##  [1] "AP002360.1" "ATG9B"      "CITED2"     "FBXO3"      "KIAA1328"  
##  [6] "MAML2"      "MBNL2"      "MHENCR"     "MLXIP"      "MMP28"     
## [11] "MTERF4"     "PDE7A"      "PLCD1"      "RAB33B"     "RETREG1"   
## [16] "SLC8B1"     "TAGAP"      "THAP6"      "TRAV8-3"    "TSPYL4"    
## [21] "WHAMM"      "WSB1"       "XIST"       "ZNF10"      "CCDC43"    
## [1] "found 22 genes."

## [1] 27
##  [1] "CBR3"     "DPEP2"    "GGT7"     "LIMS1"    "NEU1"     "SERTAD2" 
##  [7] "SLC25A32" "USP3"     "ZNF677"   "B3GALT4"  "FKBP11"   "FUT11"   
## [13] "GALNS"    "GZMB"     "PARVG"    "PLAA"     "RSU1"     "SACS"    
## [19] "SH3BGRL3" "SRGN"     "ST6GAL1"  "TRIB2"   
## [1] "found 22 genes."

## [1] 28
##  [1] "MZF1"    "NSMAF"   "YPEL5"   "C4orf48" "CROT"    "DENND4B" "EFR3A"  
##  [8] "EIF2AK4" "GNLY"    "ISG20"   "KCNAB2"  "KLF9"    "KLHDC4"  "LTBP4"  
## [15] "NEK9"    "NLRC5"   "NT5C"    "PDE4B"   "PREP"    "PREX1"   "PTPRE"  
## [22] "RCBTB2"  "SYTL1"   "ZNF236"  "ZNF292" 
## [1] "found 25 genes."

## [1] 29
##  [1] "ABCG1"       "AIF1"        "ARHGAP9"     "CD40LG"      "CRLF3"      
##  [6] "DNASE1"      "GIMAP1"      "HIST1H3H"    "IPCEF1"      "JPX"        
## [11] "KLF7"        "LIPT1"       "LYRM9"       "NABP1"       "NBPF14"     
## [16] "NUAK2"       "NUDT4"       "RNASEH1-AS1" "SLC7A6"      "SPIDR"      
## [21] "STARD10"     "STK17A"      "ZFAS1"       "ZMAT1"       "ZNF84"      
## [1] "found 22 genes."

## [1] 30
##  [1] "ATAD1"    "CDC37L1"  "COG5"     "DIP2B"    "DSE"      "FCN1"    
##  [7] "HIVEP2"   "HOXB2"    "IGKV1-5"  "IL16"     "KLHL6"    "LRRC8D"  
## [13] "PARP16"   "PITPNC1"  "RAB37"    "RPS26"    "SIMC1"    "SLC25A33"
## [19] "SLC26A11" "FAM129A"  "GNPTAB"   "JAKMIP1"  "MT2A"     "SERTAD3" 
## [25] "SMPD2"   
## [1] "found 25 genes."

## [1] 31
##  [1] "LINC00623"   "POLD4"       "TRAV12-1"    "TRAV14DV4"   "WAPL"       
##  [6] "ZNF91"       "AC020915.3"  "C1orf162"    "CCL4"        "CD300A"     
## [11] "FCRL6"       "GPR65"       "HACD3"       "MESD"        "MFSD14A"    
## [16] "NNT-AS1"     "PARP11"      "S100A12"     "S1PR5"       "SMIM37"     
## [21] "THUMPD3-AS1" "TM2D1"       "TMEM138"     "TRBV6-1"     "TSPAN14"    
## [26] "TTC38"      
## [1] "found 22 genes."

## [1] 32
##  [1] "AC004687.1" "AC004854.2" "AC016405.3" "AC020911.2" "AC023157.3"
##  [6] "AC025164.1" "AC025171.3" "AC083880.1" "AC091271.1" "AC103591.3"
## [11] "AL121944.1" "AL139246.5" "AL357060.1" "AL451085.1" "ATP2B1-AS1"
## [16] "BX284668.6" "ID3"        "LINC01465"  "MATR3-1"    "MZF1-AS1"  
## [21] "NPIPB4"     "OSER1-DT"   "PARP8"      "SDR42E2"    "Z93241.1"  
## [1] "found 4 genes."

## [1] 33
##  [1] "IER3"      "PECR"      "PPP2R5C"   "ARHGAP10"  "C1orf21"   "CARD8-AS1"
##  [7] "CST7"      "DTX3L"     "GMFB"      "IGLV3-25"  "IRF9"      "MYO1F"    
## [13] "NKG7"      "ODF3B"     "PARP14"    "PARP9"     "PEX26"     "PLA2G16"  
## [19] "PPP2R5B"   "PTGDR"     "RSAD2"     "SLA"       "TNFRSF18"  "ZBP1"     
## [1] "found 23 genes."

## [1] 34
##  [1] "ABLIM1"    "ABTB1"     "ATP5MG"    "FBXO8"     "HDHD2"     "LIMD2"    
##  [7] "LINC00861" "LTB"       "MCUB"      "METAP1"    "NOP53"     "NT5DC1"   
## [13] "PCNP"      "RACK1"     "SGSM3"     "SMDT1"     "TBC1D10C"  "TBPL1"    
## [19] "TRAV9-2"   "CDK2AP2"   "FGR"       "NUS1"      "PARP4"     "S100A11"  
## [1] "found 23 genes."

## [1] 35
##  [1] "CSRNP1"  "GATA3"   "KANSL2"  "KDM6A"   "NR4A3"   "STK19"   "TOB2"   
##  [8] "ZNF490"  "ASCL2"   "BHLHE40" "CNOT4"   "GCN1"    "KANSL1"  "KMT2B"  
## [15] "KMT2C"   "PHF20"   "PHF20L1" "RECK"    "SH3BP5"  "SYNE1"   "TBX21"  
## [22] "TNFSF10"
## [1] "found 22 genes."

## [1] 36
##  [1] "AC245297.3"  "ADA2"        "AL133415.1"  "C1GALT1"     "ERVK3-1"    
##  [6] "GIMAP6"      "GZMK"        "HEATR5B"     "KLF10"       "LEPROT"     
## [11] "OTULINL"     "SLC25A38"    "TOX"         "TRAV25"      "TRBV6-5"    
## [16] "BISPR"       "CRIP2"       "GAB3"        "MIR4435-2HG" "MX2"        
## [21] "MYBL1"       "MYO1G"       "SAMD9L"      "SPON2"       "SYNRG"      
## [1] "found 21 genes."

## [1] 37
##  [1] "CDC42SE2" "FAM118A"  "IER5"     "KLF12"    "MAP3K8"   "MTO1"    
##  [7] "PRKCH"    "RSRP1"    "SENP7"    "SLC12A7"  "TBC1D7"   "TCP11L2" 
## [13] "TMEM204"  "TTC31"    "UBL3"     "XRRA1"    "ZFAND5"   "ZNF831"  
## [19] "CAST"     "SAMD9"    "SDF2"     "TRIM22"   "XAF1"     "ZBTB8OS" 
## [1] "found 24 genes."

## [1] 38
##  [1] "CD82"    "FAM227B" "HIPK1"   "IL27RA"  "NEK1"    "PLK3"    "ST3GAL1"
##  [8] "BCL9L"   "DIAPH2"  "FNDC3B"  "GCA"     "GIMAP7"  "ITGAL"   "LCP1"   
## [15] "LY6E"    "PHF11"   "PHF23"   "RBSN"    "ROMO1"   "TYMP"   
## [1] "found 20 genes."

## [1] 39
##  [1] "COQ10A"     "SLC2A3"     "ZC3H12A"    "ZC3H12D"    "ZHX2"      
##  [6] "AC016831.7" "CCDC88B"    "CEMIP2"     "CRYBG1"     "CTBS"      
## [11] "DDIT4"      "FRY"        "GPRIN3"     "ICOS"       "KLF6"      
## [16] "LTBP3"      "NEAT1"      "NFKBIZ"     "PRDM2"      "RNF145"    
## [21] "RNMT"       "SLC9A8"     "TOB1"       "ZNF101"    
## [1] "found 22 genes."

## [1] 40
##  [1] "CLK4"    "EPB41"   "EVL"     "FLI1"    "LETMD1"  "MALAT1"  "NOSIP"  
##  [8] "POLL"    "RGS10"   "SEPT6"   "SH2D1A"  "SS18"    "STARD7"  "ZNF821" 
## [15] "ACAP2"   "ACAP3"   "AFF1"    "KMT2E"   "LRRFIP1" "MLLT10"  "PIM2"   
## [22] "PVT1"    "SELL"   
## [1] "found 21 genes."

Session information

gc()
##            used  (Mb) gc trigger  (Mb) limit (Mb) max used  (Mb)
## Ncells  4162152 222.3   11673970 623.5         NA 11673970 623.5
## Vcells 20573929 157.0   51369168 392.0      65536 51368243 392.0
sessionInfo()
## R version 4.2.3 (2023-03-15)
## Platform: aarch64-apple-darwin20 (64-bit)
## Running under: macOS Ventura 13.4.1
## 
## Matrix products: default
## BLAS:   /Library/Frameworks/R.framework/Versions/4.2-arm64/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.2-arm64/Resources/lib/libRlapack.dylib
## 
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] stringr_1.5.0     limma_3.54.2      tidyr_1.3.0       ggpubr_0.6.0     
## [5] ggplot2_3.4.2     data.table_1.14.8
## 
## loaded via a namespace (and not attached):
##  [1] Rcpp_1.0.10            png_0.1-8              Biostrings_2.66.0     
##  [4] digest_0.6.31          utf8_1.2.3             R6_2.5.1              
##  [7] GenomeInfoDb_1.34.9    backports_1.4.1        stats4_4.2.3          
## [10] RSQLite_2.3.1          evaluate_0.20          httr_1.4.6            
## [13] pillar_1.9.0           zlibbioc_1.44.0        rlang_1.1.0           
## [16] rstudioapi_0.14        car_3.1-2              jquerylib_0.1.4       
## [19] blob_1.2.4             R.oo_1.25.0            R.utils_2.12.2        
## [22] S4Vectors_0.36.2       rmarkdown_2.21         labeling_0.4.2        
## [25] RCurl_1.98-1.12        bit_4.0.5              munsell_0.5.0         
## [28] broom_1.0.4            compiler_4.2.3         xfun_0.39             
## [31] pkgconfig_2.0.3        BiocGenerics_0.44.0    htmltools_0.5.5       
## [34] tidyselect_1.2.0       KEGGREST_1.38.0        GenomeInfoDbData_1.2.9
## [37] tibble_3.2.1           IRanges_2.32.0         fansi_1.0.4           
## [40] crayon_1.5.2           dplyr_1.1.2            withr_2.5.0           
## [43] R.methodsS3_1.8.2      bitops_1.0-7           grid_4.2.3            
## [46] jsonlite_1.8.4         gtable_0.3.3           lifecycle_1.0.3       
## [49] DBI_1.1.3              magrittr_2.0.3         scales_1.2.1          
## [52] cli_3.6.1              stringi_1.7.12         cachem_1.0.7          
## [55] carData_3.0-5          farver_2.1.1           XVector_0.38.0        
## [58] ggsignif_0.6.4         bslib_0.4.2            generics_0.1.3        
## [61] vctrs_0.6.2            RColorBrewer_1.1-3     org.Hs.eg.db_3.16.0   
## [64] tools_4.2.3            bit64_4.0.5            Biobase_2.58.0        
## [67] glue_1.6.2             purrr_1.0.1            abind_1.4-5           
## [70] fastmap_1.1.1          yaml_2.3.7             AnnotationDbi_1.60.2  
## [73] colorspace_2.1-0       rstatix_0.7.2          memoise_2.0.1         
## [76] knitr_1.44             sass_0.4.5